package cn.com.megalith.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
import org.springframework.web.filter.CorsFilter;

/**
 * @Description:
 * @author: zhoum
 * @Date: 2018-11-22
 * @Time: 17:09
 */
@Configuration
public class WebOrignAllowConfig {
    /**
     * @return org.springframework.web.filter.CorsFilter
     * @Author zhoum
     * @Description 解决跨域问题
     * @Date 17:10 2018-11-22
     * @Param []
     **/
    @Bean
    public CorsFilter corsFilter() {
        final UrlBasedCorsConfigurationSource urlBasedCorsConfigurationSource = new UrlBasedCorsConfigurationSource();
        final CorsConfiguration corsConfiguration = new CorsConfiguration();
        corsConfiguration.setAllowCredentials(true);
        corsConfiguration.addAllowedOrigin("*");
        corsConfiguration.addAllowedHeader("*");
        corsConfiguration.addAllowedMethod("*");
        urlBasedCorsConfigurationSource.registerCorsConfiguration("/**" , corsConfiguration);
        return new CorsFilter(urlBasedCorsConfigurationSource);
    }
}
